home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d7 / docsdsz.arc / PRINTER.DOC < prev    next >
Text File  |  1990-02-04  |  101KB  |  2,507 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.             DSZ.COM - ZMODEM-90(TM), True YMODEM(TM), XMODEM File Transfer Program
  8.  
  9.                             Chuck Forsberg -  Omen Technology Inc
  10.  
  11.           ───────────
  12.           DESCRIPTION:
  13.           ───────────
  14.  
  15.           DSZ is a "protocol driver" that uses the ZMODEM-90(TM), True YMODEM(TM), or
  16.           XMODEM protocol to transfer files over a serial port with a variety of
  17.           programs.
  18.  
  19.           ZMODEM Transfers feature 32 bit CRC, advanced file management, and Crash
  20.           Recovery, ZMODEM Crash Recovery can be used to complete interrupted file
  21.           transfers started with any protocol.
  22.  
  23.           DSZ has two main commands for ZMODEM transfers: "sz" sends file(s), and "rz"
  24.           receives them.
  25.  
  26.           When calling bulletin boards to download files with ZMODEM you can avoid the
  27.           bother of starting DSZ for each transfer by calling DSZ first, before asking
  28.           the BBS for the download.
  29.  
  30.                   dsz t
  31.  
  32.           The "t" command allows you to keyboard the file request directly to the BBS.
  33.           (The "t" stands for "terminal emulation".) Just give the "dsz t" command from
  34.           DOS or your comms program's DOS GATEWAY.  DSZ's ZMODEM AutoDownload then
  35.           receives the file automatically, using the filename provided by the BBS,
  36.           without any wasted keystrokes or delay.  Try it, you'll like it!  (The "t"
  37.           command is described below.)
  38.  
  39.           YMODEM downloads are almost as easy.  Use the "t" command as shown above, and
  40.           hit the F3 key after telling the board to download a file with YMODEM.
  41.  
  42.           ZMODEM and True YMODEM(TM) transfers preserve exact file length and
  43.           modification time.
  44.  
  45.           DSZ supports XMODEM-1k (XMODEM with 1024 byte blocks, sometimes mislabeled as
  46.           ymodem) and CRC-16 with the sx -k and rc commands.
  47.  
  48.           DSZ is derived from Omen Technology's "Professional-YAM" high reliability
  49.           communications tools (also known as PowerCom(TM)) and Omen Technology's ZCOMM
  50.           User Supported Communications Software.  DSZ supports a subset of Pro-YAM's
  51.           file transfer related commands.  This documentation makes extensive references
  52.           to contemporary editions of the Pro-YAM or ZCOMM manual, and is incomplete
  53.           without it.  (Registered copies include an alternate, copyrighted file.)
  54.  
  55.           DSZ is usually called from a communications or bulletin board program.
  56.  
  57.           DSZ uses its own modem I/O.  The original interrupt vector, UART parity, and
  58.           interrupt configuration are restored on exit.  The original state of the 8259
  59.           interrupt mask bit for this vector is also restored on exit.
  60.  
  61.  
  62.  
  63.  
  64.                                           1
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.           DSZ uses DOS standard output (stdout) for messages.  DSZ never writes directly
  74.           to the screen.  DSZ expects its standard output to point to the console, a
  75.           logging file, or NUL, but never the modem port.  If dsz's standard output is
  76.           redirected to the modem (as with ProComm's Host mode DOS shell), the
  77.           combination will lock up the computer.  When necessary, dsz's standard output
  78.           can be redirected back to the console device with the CON command.
  79.  
  80.           Users of pcAnywhere must use dsz's A command to disable pcAnywhere host mode
  81.           during file transfers.
  82.  
  83.           DSZ exits with 0 status for successful transfers, or the value of the Q
  84.           parameter (default 1) if a file transfer failed, or if no files were
  85.           transferred.  Many languages and "door" programs do not return this
  86.           information to the calling program.  Some languages and "door" programs freak
  87.           out (hang) on certain non-zero exit values.
  88.  
  89.           A batch file that calls DSZ directly may be used to detect the DSZ exit status
  90.           with the DOS "errorlevel" construct.  Please refer to the Q numeric parameter
  91.           below for more information.
  92.  
  93.           DSZ's log file entries may also be examined to determine the success or
  94.           failure of a file transfer.
  95.  
  96.  
  97.           ────────────────────────
  98.           DSZ.COM SETUP PARAMETERS:
  99.           ────────────────────────
  100.  
  101.               Except as noted, all commands and options must be typed in lower case.
  102.  
  103.                                      DO NOT USE UPPER CASE!!
  104.  
  105.           Optional commands or arguments are shown in square brackets [].
  106.  
  107.           When used (in any combination), the A, CON, port, speed, handshake, estimate,
  108.           and d commands must be used in exactly this order:
  109.  
  110.  
  111.           DSZ.COM [A] [CON] [port N] [speed S] [handshake] [D] [d] [pxN] file
  112.                                                                          transfer
  113.                                                                          command
  114.  
  115.  
  116.           [A]
  117.                 Suspend pcAnywhere operation during file transfers.  The A command is
  118.                 used to avoid lockups caused by pcAnywhere host mode.  This command
  119.                 should be given to the program running under pcAnywhere host mode.
  120.  
  121.                 EXAMPLE: C>dsz A sz *.foo Sends files from a pcAnywhere hosted machine
  122.                 to you.
  123.  
  124.                 Fm: Al de la Torre
  125.  
  126.                 1. sending from host to remote
  127.  
  128.  
  129.  
  130.                                           2
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.                        type: "dsz A sz filename.ext" ENTER
  140.                        shell to dos on remote machine (ctrl-Rshift)
  141.                        type: "dsz A rz" ENTER
  142.  
  143.                 2. sending from remote to host
  144.                        type: "dsz A rz" ENTER
  145.                        shell to dos on remote machine (ctrl-Rshift)
  146.                        type: "dsz A sz filename.ext" ENTER
  147.  
  148.  
  149.           [CON]
  150.                 Redirect message output to the DOS "CON"  (console)  device,  overriding
  151.                 any previous redirections.  This is necessary to avoid lockups caused by
  152.                 ProComm host mode.  Most  programs  do  not  require  this  hack.   This
  153.                 command is unique to DSZ.
  154.  
  155.  
  156.           [port N]
  157.  
  158.                 select port N (n = 1,2,3,4,5,6,7,8, 10,11,12,13,14,15,16,17,18) Default
  159.                 is port 1 (COM1) or read from the DSZPORT dos environment variable.
  160.                 COM11 to COM18 refer to the COM1 to COM8 ports on the PS/2.
  161.  
  162.                 DSZ's COM3 uses 3E8 and IRQ4.  DSZ's COM4 uses 2E8 and IRQ3.
  163.                 DSZ's COM7 uses 3E8 and IRQ5.  DSZ's COM8 uses 2E8 and IRQ5.
  164.  
  165.                 If you wish to use COM3 or COM4 and your computer is not wired according
  166.                 to one of these choices, you MUST use the "portx" command to specify
  167.                 base address and interrupt vector.
  168.  
  169.                 EXAMPLE: to use COM2:
  170.                 dsz port 2 rz
  171.  
  172.                 In multitasking operation, accessing a port used by another running
  173.                 program will hang the machine.
  174.  
  175.  
  176.           [portx base,irq]
  177.  
  178.                 To select an arbitrary port address and interrupt vector, the
  179.                 portx command must be used instead of the port command.
  180.  
  181.                 EXAMPLE: dsz portx 3e8,4 speed 2400 rz
  182.  
  183.  
  184.           [speed S]
  185.  
  186.                 Set the specified speed.  This command is rarely needed because DSZ
  187.                 reads the port's current speed by default.
  188.                 DSZ supports a maximum speed of 38400.  Please study all the
  189.                 chapters of this document when using speeds above 2400 bps.
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.                                           3
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.           [handshake (ON) (BOTH) (SLOW)]
  206.  
  207.                    Enable one of several choices of handshake (ie Flow Control).
  208.                    ON enables CTS/RTS Hardware Flow Control; BOTH enables CTS/RTS
  209.                    Hardware Flow Control *And* XOFF/XON software Flow Control; SLOW
  210.                    has been added to disable the RTS signal to the modem while
  211.                    writing to disk, even if the interrupt buffer is not chock full of
  212.                    bytes.  This should help systems with excessive interrupt latency on
  213.                    disk writes. (see Got Zpros section towards end of manual)
  214.  
  215.                    In DSZ the "handshake"
  216.                    command may be abbreviated to "ha".
  217.  
  218.  
  219.           [estimate (length) (speed)]
  220.  
  221.                 Use  the  specified  length  and  optional  specified
  222.                 effective  transfer speed for the next receive file to be created. This
  223.                 command must come *after* any port, speed, or handshake commands.
  224.  
  225.                 The following makes DSZ calculate file transfer times on  the  basis  of
  226.                 290 character per second aggregate transfer rate:
  227.  
  228.                 EXAMPLE: dsz port 2 speed 9600 estimate 0 2900 rz
  229.  
  230.                 EXAMPLE: dsz port 2 speed 9600 estimate 0 2900 sz bimama.zip
  231.  
  232.  
  233.           [D]
  234.                 Disables the modem (drops Data Terminal Ready, DTR) if carrier is lost.
  235.                 This may be used to prevent spurious events (phone ringing) from
  236.                 interfering with the calling bulletin board's recovery from carrier
  237.                 loss.
  238.  
  239.           [d]
  240.                 Disables carrier dropout monitoring, for modems that do not properly
  241.                 drive the "Carrier Detect" input on the PC.  If you see a No Carrier
  242.                 Detect message, you need to give the d command.  Before using the d
  243.                 command, make sure you have the proper port selected!!!
  244.  
  245.  
  246.           [LARG]  Convert ARG to lower case, then parse arg.
  247.  
  248.  
  249.           [pxN]
  250.                 Set a numeric parameter x to N.  These parameters are mostly a subset of
  251.                 the Pro-YAM/ZCOMM numeric parameters, and are listed below.  They assume
  252.                 their defaults each time DSZ is called.  Without an argument, p displays
  253.                 the numeric parameters and their values.
  254.  
  255.                 EXAMPLE: C>dsz p
  256.  
  257.                 z pxN Set zmodem numeric parameter x to N.  These parameters correspond
  258.                 to the Pro-YAM or ZCOMM "zmodem" parameters and rarely need changing.
  259.  
  260.  
  261.  
  262.                                           4
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271.                 These parameters assume their defaults each time DSZ is called.  Without
  272.                 an argument, z p displays the zmodem numeric parameters and their
  273.                 values.
  274.  
  275.  
  276.           [restrict]
  277.  
  278.                 Restrict pathnames to the current disk and directory tree, and
  279.                 disallow overwriting of existing files.  When DSZ is restricted, it will
  280.                 refuse to transfer files containing the string autoexec.bat and
  281.                 command.com in upper or lower case.  This provides some defense from
  282.                 malicious uploaded files.
  283.  
  284.  
  285.           [t]   (-T) (-8g)      Talk with ZMODEM AutoDownload.
  286.  
  287.                 DSZ's ZMODEM AutoDownload(Tm) detects the start of a ZMODEM file
  288.                 download and accepts the file(s) without operator intervention.
  289.  
  290.                 The optional -T forces DSZ to exit after it has recognized a ZMODEM
  291.                 AutoDownload(Tm) request.
  292.  
  293.                 The optional -8g (available on registered copies only) enables reception
  294.                 of "BBS (ANSI) graphics" displays.  (A video device driver such as
  295.                 ANSI.SYS must be loaded to support some types of graphics.) A small
  296.                 subset of ZCOMM/Pro-YAM term function subcommands are recognized.
  297.  
  298.                 Keyboard F1 or ALT-X to exit.  F3 receives file(s) with True YMODEM(TM),
  299.                 ALT-P toggles parity between the 8n default and 8g (enables ANSI
  300.                 "graphics").  ALT-H toggles two local echo ("Half Duplex") modes; the
  301.                 second displays a newline (CR/LF) when Enter is keyboarded.  Keyboarded
  302.                 ASCII characters are sent to the modem.  ALT-B sends a break.
  303.  
  304.                 Characters from the modem print on the screen.  A device driver such as
  305.                 ANSI.SYS may be used to recognize escape sequences.
  306.  
  307.           [o]   Turn off Data Terminal Ready (DTR), terminating ("offing") the
  308.                 connection if the modem responds to DTR.  Useful with the "t" command to
  309.                 disconnect afterwards.
  310.  
  311.                 EXAMPLE: dsz t o
  312.  
  313.  
  314.           ────────────────────────────────────────
  315.           NUMERIC PARAMETERS:    THE  pxN  COMMAND
  316.           ────────────────────────────────────────
  317.  
  318.           DSZ uses the following main numeric parameters, settable with the pxN command.
  319.  
  320.           EXAMPLE:   dsz pQ0
  321.  
  322.  
  323.           B   Set the size of buffer used for disk reads and writes.  The default is
  324.               1024, 4096 maximum.  (16384 max on DSZ.EXE) If your copy of DSZ is running
  325.  
  326.  
  327.  
  328.                                           5
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.               on a floppy disk system or a very slow turkey hard disk, a larger value
  338.               may give better results.  Too large a value may exhaust memory, induce
  339.               receiver timeouts, cause disconnects(!), or generate spurious CRC errors.
  340.               If performance logging doesn't work, this parameter is too big.
  341.  
  342.               EXAMPLE: C>dsz pB4096 sz A:floppy.fil
  343.  
  344.               Setting the buffer size may lock out the performance log, DSZFILES, and/or
  345.               indirect pathname list in the "tiny model" DSZ flavor.
  346.  
  347.               IF YOU AREN'T BLOODY SURE YOU NEED A BIGGER BUFFER, DON'T USE ONE.
  348.  
  349.  
  350.           O   This parameter controls XMODEM OverThruster(TM).
  351.  
  352.               CompuServe XMODEM Negative numbers control the number of bytes added
  353.               to the window on XMODEM downloads from the CompuServe Information
  354.               Service.  Larger numbers increase throughput, but cause improperly
  355.               interfaced MNP modems on CIS nodes to drop characters under stress,
  356.               disrupting the file transfer.
  357.               EXAMPLE: dsz pO-512 ro file1.ext
  358.  
  359.               Other XMODEM Positive numbers up to a system dependent value less than
  360.               the protocol block size increase throughput.  Larger values induce
  361.               timeouts and/or retransmitted blocks.  The optimum value must be
  362.               determined by experiment.  60 usually give best results with MNP
  363.               modems at 2400 bps.  The optimum value varies depending on the remote
  364.               computer, modem(s), system traffic, and the network node.
  365.               EXAMPLE: dsz pO60 ro file1.ext
  366.  
  367.  
  368.           P   After a "speed" command, giving a p command (display parameters), the P
  369.               parameter value will indicate the type of serial I/O UART chip detected.
  370.               DSZ automatically detects and enables the FIFO buffer on the NS16550A and
  371.               Intel 82510 chips.
  372.  
  373.               EXAMPLE: dsz port 1 speed 19200 p
  374.  
  375.  
  376.               0  Indicates a standard 8250 or 16450 UART with no special features.
  377.  
  378.               1  Indicates an NS16550A with 16 deep receive buffering.  This is the
  379.                  preferred chip.
  380.  
  381.               2  Indicates an Intel 82510 with 3 deep receive buffering.
  382.  
  383.               The sequence "port 1 pP1 speed 19200" bypasses DSZ's verification checks
  384.               normally performed on the FIFO configuration and may allow a defective
  385.               FIFO on certain chips to be used.  This incantation is not required for
  386.               the NS16550A.
  387.  
  388.  
  389.           Q   Error code returned to DOS (default 1).  (Success always returns 0.) Some
  390.               programs toss cookies when confronted with certain exit codes.
  391.  
  392.  
  393.  
  394.                                           6
  395.  
  396.  
  397.  
  398.  
  399.  
  400.  
  401.  
  402.  
  403.  
  404.               EXAMPLE: C>dsz pQ-1 sz foo.bar
  405.  
  406.               DSZ reports an error if no files have been transferred, even if the
  407.               command used wasn't supposed to transfer any file(s).
  408.  
  409.           S   Timeout in seconds (default 15) waiting for restraint release (XON and/or
  410.               handshake).
  411.  
  412.           W   Wait for Enter key before exiting after an error.  Effective only on
  413.               registered copies.  Useful when calling DSZ from DESQview, allows the
  414.               window to close unless there is an error message that should remain
  415.               visible.
  416.  
  417.               EXAMPLE: C>dsz pW1 sz foo.bar
  418.  
  419.  
  420.           a   Calibrates certain protocol timeouts used with XMODEM and YMODEM transfers
  421.               (Cybernetic Data Recovery(TM)).  This parameter does not affect ZMODEM
  422.               transfers.
  423.  
  424.               The a numeric parameter is automatically set to 2000 for a 4.77 mHz PC or
  425.               XT, 4000 for a PS2/30, 6000 for an 8 mHz 1ws AT, and 12000 for a PS2/80.
  426.               If your computer has a speedup card or otherwise runs unusually fast (or
  427.               slow!) for its type, you may set the a numeric parameter to a value that
  428.               reflects its speed.
  429.  
  430.               EXAMPLE: dsz port 2 pa4000 rb
  431.  
  432.  
  433.               NOTE: Setting this parameter does not suppress the "Unknown Machine Type"
  434.               message which is displayed before the command line is scanned.
  435.  
  436.           d   A non zero value (the default) causes incoming files received with ZMODEM
  437.               and full YMODEM transfers to have their Date set to that sent in the file
  438.               header.  ZMODEM's file management features depend on the transmission of
  439.               each file's modification date.  Files will have the same creation date,
  440.               even if the two machines are in different time zones.  When transferring
  441.               files to/from a Unix system, creation dates are interpreted according to
  442.               GMT or Universal Coordinated Time.  File dating may be disabled with a pd0
  443.               command.
  444.               NOTE: Backdating file creation times may confuse some backup programs.
  445.  
  446.           v   Verbose level (debugging output) Negative values inhibit some routine
  447.               messages.  Setting v to 1 or greater causes serialized copies to ring the
  448.               bell when a transfer is done.
  449.  
  450.           z   Timezone in minutes behind GMT, used for ZMODEM and True YMODEM file
  451.               transfers to coordinate the actual date of the file with computers in
  452.               other time zones.  Effective on registered copies.  PDT or MST corresponds
  453.               to 420.  This may be preset with the ZONE DOS environment variable.
  454.  
  455.  
  456.  
  457.  
  458.  
  459.  
  460.                                           7
  461.  
  462.  
  463.  
  464.  
  465.  
  466.  
  467.  
  468.  
  469.           ──────────────────────
  470.           FILE TRANSFER COMMANDS:
  471.           ──────────────────────
  472.  
  473.  
  474.                           DESCRIPTIONS OF PROTOCOLS SUPPORTED BY DSZ.COM
  475.  
  476.  
  477.                   XMODEM The Ward Christensen file transfer protocol uses 128 byte
  478.                       packets, one byte control messages, and a one byte arithmetic
  479.                       checksum.
  480.  
  481.                   XMODEM/CRC A synonym for the enhanced Ward Christensen XMODEM protocol
  482.                       using a Cyclic Redundancy Check (CRC-16).  Newer programs support
  483.                       CRC-16 for better data integrity, but reliability is still
  484.                       compromized by one byte control messages.
  485.  
  486.                   XMODEM-1k XMODEM protocol with 1024 byte data packets, CRC-16, and one
  487.                       byte control messages, sometimes incorrectly called ymodem.
  488.  
  489.                   YMODEM is a batch file transfer protocol with pathname, date,
  490.                       file length and other file data in block 0, CRC-16 default, and
  491.                       optional 1024 byte packets.  Many programs claiming to support
  492.                       YMODEM actually use XMODEM with 1024 byte blocks; use ZCOMM's sx
  493.                       -k and rx XMODEM commands with these mutants.
  494.  
  495.                   ZMODEM An advanced public domain file transfer protocol with
  496.                       simplified human interface, crash recovery, high speed streaming,
  497.                       sensitive 32 bit CRC, command download, security features, and
  498.                       important file management functions.
  499.                       file transfers with traditional protocols.
  500.  
  501.  
  502.  
  503.  
  504.                                               ZMODEM
  505.  
  506.  
  507.                    + ZMODEM data transfers are protected by the Federal Standard 32 bit
  508.                      CRC to assure reliable transfers.  This 32 bit CRC gives an
  509.                      undetected error rate five orders of magnitude better than XMODEM's
  510.                      16 bit CRC, and more than a billion times better than checksum
  511.                      XMODEM.  ZMODEM uses 16 bit CRC for file transfers with programs
  512.                      that do not support 32 bit CRC.
  513.                    + Most important, all ZMODEM protocol transactions are protected by
  514.                      CRC.  Some competing protocols advertising 16 or 32 bit CRC fail
  515.                      under stress because transactions use single characters not
  516.                      protected by CRC.
  517.  
  518.                   ZMODEM supports Crash Recovery and advanced file management.  If
  519.                   you've ever been disconnected when a huge file transfer was almost
  520.                   finished, you'll appreciate resuming/recovering the file transfer with
  521.                   the ZMODEM r option.  You can use the n option to transfer only those
  522.                   files that have changed since the last time they were transferred.
  523.  
  524.  
  525.  
  526.                                           8
  527.  
  528.  
  529.  
  530.  
  531.  
  532.  
  533.  
  534.  
  535.                   With the p option, you can unconditionally protect files that already
  536.                   exist on the destination system.  To update only the files you already
  537.                   have while skipping the rest, use the Yn option.
  538.  
  539.                   To send a file with ZMODEM, the command sz file1 can be given from
  540.                   either the main command prompt, or from a secondary command prompt
  541.                   obtained with ALT-2.  Multiple files and wild cards may be used.
  542.  
  543.                   EXAMPLE: sz file1 file2 *.lst
  544.  
  545.                   If Z mode has been enabled (the default), ZCOMM's term function will
  546.                   detect a ZMODEM transmission and receive the file(s) automatically,
  547.                   after a security check.  Otherwise, the rz command may be given from a
  548.                   command prompt.
  549.  
  550.                   Please refer to the sz and zcommand commands for examples.
  551.  
  552.  
  553.           ──────> NEW-NEW-NEW!!!  with the 1-22-90 edition of DSZ you get:
  554.  
  555.                                         MobyTurbo(Tm)
  556.  
  557.                   MobyTurbo optimizes throughput on ZIP, ARC, and similar files over
  558.                   paths that support YMODEM-g (or would except for random errors).
  559.                   MobyTurbo cannot be used with most types of software flow control (or
  560.                   "handshake both").
  561.  
  562.                   Activate MobyTurbo with the -m option to one or more of: sz, rz
  563.  
  564.                   LOCK OUT MobyTurbo with the -M option.  -M is effective until the next
  565.                   "call" command.
  566.  
  567.  
  568.  
  569.                                             TRUE YMODEM
  570.  
  571.                   Developed in 1981, YMODEM extensions to XMODEM are finding their way
  572.                   into many communications programs.  Rb and sb programs are available
  573.                   for Unix and VAX/VMS.  With Omen's Enhanced Data Recovery(TM), YMODEM
  574.                   gives excellent efficiency, integrity, and good robustness.
  575.  
  576.                   True YMODEM transfers one or more files in a batch without alteration
  577.                   or added garbage characters.  True YMODEM preserves the file date
  578.                   across multiple time zones.  ZCOMM and the Unix(TM) rb and sb programs
  579.                   and ZCOMM preserve the file modification date.[2]
  580.  
  581.                   The sb k option (1024 byte blocks) may be used to enhance throughput,
  582.                   especially when using timesharing systems, satellite links, or packet
  583.                   networks that can support the longer blocks.
  584.  
  585.                   EXAMPLE: sb -k *.c *.h sends all .c and .h files in the current
  586.                   directory with 1024 byte blocks.[3]
  587.  
  588.                   YMODEM Batch files can be received with the rb or F3 commands.
  589.  
  590.  
  591.  
  592.                                           9
  593.  
  594.  
  595.  
  596.  
  597.  
  598.  
  599.  
  600.  
  601.  
  602.                   YMODEM Batch file transfers with Unix and VMS systems are discussed
  603.                   later in this chapter.  Many programs claiming to support YMODEM
  604.                   actually use XMODEM with 1024 byte blocks; use ZCOMM's sx -k and rx
  605.                   XMODEM commands with these imposters.
  606.  
  607.  
  608.  
  609.                                              XMODEM-1k
  610.  
  611.                   The XMODEM-1k protocol transfers one file per command with 1024 byte
  612.                   blocks and a nominal 16 bit CRC.  The file name must be entered for
  613.                   both the sender and the receiver.  Programs lacking ZCOMM's Cybernetic
  614.                   Data Recovery(TM) logic are less likely to transfer data accurately
  615.                   under marginal conditions.  XMODEM's use of every possible 8 bit code
  616.                   limit its effectiveness in many applications.
  617.  
  618.                   The end of the file may be padded by up to 127 or 1023[4] garbage
  619.                   characters.
  620.  
  621.                   To send a file: sx -k file1
  622.  
  623.                    2. Controlled by the d and z numeric parameters
  624.  
  625.                    3. ZCOMM switches to 128 byte blocks at the end of a file when the
  626.                       length warrants.
  627.  
  628.                    4. Some programs (including ZCOMM) limit this padding to 127 bytes.
  629.  
  630.                   To receive a file: rc file1
  631.  
  632.  
  633.  
  634.                                              XMODEM/CRC
  635.  
  636.                   The XMODEM/CRC protocol transfers one file per command.  The file name
  637.                   must be entered for both the sender and the receiver.  Programs
  638.                   lacking ZCOMM's Cybernetic Data Recovery(TM) logic are less likely to
  639.                   transfer data under marginal conditions.  XMODEM-CRC's short data
  640.                   blocks and use of every possible 8 bit code limit its effectiveness in
  641.                   many applications.
  642.  
  643.                   The end of the file may be padded by up to 127 garbage characters.
  644.  
  645.                   To send a file: sx file1
  646.  
  647.                   To receive a file: rc file1
  648.  
  649.  
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.  
  657.  
  658.                                           10
  659.  
  660.  
  661.  
  662.  
  663.  
  664.  
  665.  
  666.  
  667.                                                XMODEM
  668.  
  669.                   The original MODEM protocol, developed by Ward Christensen, is
  670.                   supported by a large and growing number of programs operating on a
  671.                   variety of micros and minis.  The base level XMODEM protocol gives
  672.                   good results when used over low error rate direct telephone
  673.                   connections.  XMODEM's short data blocks and use of every possible 8
  674.                   bit code limit its effectiveness in many applications.
  675.  
  676.                   File transfers with this protocol add up to 127 garbage characters to
  677.                   transferred files.  The XMODEM protocol can transfer one file per
  678.                   command.  The file name must be entered at both the sender and the
  679.                   receiver.
  680.  
  681.                   To send a file with plain XMODEM: sx file1
  682.  
  683.                   To receive a file with XMODEM: rx file1
  684.  
  685.  
  686.  
  687.                                       XMODEM with OverThruster
  688.  
  689.                   XMODEM file downloading from networks and timesharing systems is
  690.                   slowed by short blocks and long response times.  With some systems,
  691.                   one can speed up downloads by using the ro command to receive the
  692.                   file.  Because OverThruster defeats error recovery, a line hit will
  693.                   usually abort a download.  With nearly error free connections, one can
  694.                   save enough time from the increased throughput to make up for failed
  695.                   transfers.  OverThruster may be used with X.PC or MNP error correcting
  696.                   link level protocols.
  697.  
  698.                   EXAMPLE: ro file1
  699.  
  700.  
  701.                                         Clink/SEAlink Batch
  702.  
  703.                   When transferring files with the SEA CLINK 1.13 or compatible
  704.                   programs, DSZ's rb and sb commands recognize SEAlink's modified
  705.                   Telink protocol.  The rb command allows a transmitting SEAlink program
  706.                   to use sliding windows.  Telink time zone and file name considerations
  707.                   apply to SEAlink.  In addition, because SEAlink uses all 256 of the
  708.                   possible 8 bit codes for both data transfer and protocol management,
  709.                   some modems and networks that operate with XMODEM will not accomodate
  710.                   SEAlink.  As with the MODEM7 and Clink protocols mentioned above, the
  711.                   SEAlink protocol is included for convenience in situations where the
  712.                   YMODEM and ZMODEM protocols are not implemented.
  713.  
  714.                   EXAMPLE: zmodem pZ120;  sb file1.ext *.baz Sends the specified files
  715.                   to a SEAlink program with a 2 hour time zone adjustment.
  716.  
  717.                   EXAMPLE: rb -z60 Receives one or more files from a SEAlink program
  718.                   with a 60 minute time zone adjustment.
  719.  
  720.  
  721.  
  722.  
  723.  
  724.                                           11
  725.  
  726.  
  727.  
  728.  
  729.  
  730.  
  731.  
  732.  
  733.           ────────────────────────────────────────────────
  734.           ADDITIONAL DESCRIPTIONS OF FILE TRANSFER COMMANDS:
  735.           ────────────────────────────────────────────────
  736.  
  737.                   rb [-options]   Receives with options 1 or more files using YMODEM
  738.                     batch protocol.  The rb command also receives files sent with
  739.                     Clink/SEAlink protocol.
  740.  
  741.                     The pathname and length of each file are transmitted in batch mode.
  742.                     If a file is received in error (retries exhausted, etc.), the batch
  743.                     transfer will terminate.  If privileges are restricted, a file
  744.                     received in error will be unlinked (erased).
  745.  
  746.                     EXAMPLE: rb -y
  747.  
  748.                     Many programs claiming to support YMODEM actually use XMODEM with
  749.                     1024 byte blocks; use ZCOMM's sx -k and rx XMODEM commands with
  750.                     these imposters.
  751.  
  752.                     SEE ALSO: YMODEM Batch protocol, Chapter 11.
  753.  
  754.  
  755.                   rb [-options] [dir] [file ...]   Receives with options 1 or more files
  756.                     using YMODEM batch protocol.  An optional disk and/or directory dir
  757.                     may be specified.  The optional supplied pathnames file ...  are
  758.                     used in place of pathnames normally provided by the sending program.
  759.                     If the sending program attempts to send more files than the number
  760.                     of names supplied to the rb command, the transfer is aborted.
  761.  
  762.  
  763.                   rc [-options] file   Receives with options a single file using the
  764.                     Christensen XMODEM protocol, 128 or 1024 byte blocks, and CRC-16
  765.                     instead of an 8 bit checksum.  ZCOMM signals the sending program
  766.                     that CRC-16 is to be used.  After four errors while attempting to
  767.                     receive the first sector, ZCOMM will cancel the CRC-16 option and
  768.                     reverts to checksum operation.
  769.  
  770.                     The probability of an undetected transmission error is much less if
  771.                     CRC-16 is used in place of the default 8 bit arithmetic checksum.
  772.                     Omen Technology Inc Recommends use of the 16 bit CRC to maintain
  773.                     data integrity at professional levels.
  774.                     CRC-16 is not the default because most IBM bulletin boards and
  775.                     commercial modem programs only support the 8 bit checksum.  Chapter
  776.                     17 describes the available options to the rc command.  If privileges
  777.                     are restricted, a file received in error will be deleted.
  778.  
  779.  
  780.                   ro [-options] file   Receives with options a single file using non-
  781.                     standard XMODEM-CRC protocol logic.  OverThruster(TM) speeds file
  782.                     downloads at the expense of error recovery.  OverThruster operation
  783.                     is controlled by the O numeric parameter (q.v.).  As fans of
  784.                     Buckaroo Bonzai know, the OverThruster is not universally
  785.                     applicable.  A transmission error will almost always terminate an
  786.                     OverThruster file download.
  787.  
  788.  
  789.  
  790.                                           12
  791.  
  792.  
  793.  
  794.  
  795.  
  796.  
  797.  
  798.  
  799.  
  800.                     If Restricted, a file received in error will be unlinked (erased).
  801.  
  802.                     EXAMPLE: ro foo.com
  803.  
  804.                     SEE ALSO: O numeric parameter
  805.  
  806.  
  807.                   rx [-options] file   Receives with options a single file using the
  808.                     Christensen XMODEM protocol.  Chapter 17 describes the available
  809.                     options.  If restricted, a file received in error will be unlinked
  810.                     (erased).
  811.  
  812.                     EXAMPLE: rx foo.com
  813.  
  814.  
  815.                   rz [-options]   Receives with options 1 or more files using ZMODEM
  816.                     protocol.  Each file's pathname is obtained from the sending
  817.                     program.  The +, a, b, n, N, r, and y options are accepted from the
  818.                     sending program, subject to restriced privileges.  If the +, b, n,
  819.                     N, r, or y option is specified to the receiver, it overrides any
  820.                     contrary options specified to the sender.
  821.  
  822.                     Only one of the a, b, or r options may be specified.
  823.                     Only one of the +, n, N, or y options may be specified.
  824.                     If a file is received in error (retries exhausted, etc.), the batch
  825.                     transfer will terminate.  If privileges are restricted, a file
  826.                     received in error will be unlinked (erased).
  827.  
  828.                     EXAMPLE: rz -y
  829.  
  830.  
  831.                   rz [-options] [dir] [file ...]  Receives with options 1 or more files
  832.                     using YMODEM batch protocol.  An optional disk and/or directory dir
  833.                     may be specified.  The optional supplied pathnames file ...  are
  834.                     used in place of pathnames normally provided by the sending program.
  835.                     If the sending program attempts to send more files than the number
  836.                     of names supplied to the rz command, the transfer is aborted.  To
  837.                     allow use of the rz command, Z mode (ZMODEM autodownload) should be
  838.                     turned off with a dis -Z command.
  839.  
  840.  
  841.                  sb [-options] pathspec   Send the files specified in pathspec using the
  842.                     YMODEM Batch Protocol. The pathname, length, and modification
  843.                     time of each file are transmitted.  Files which cannot be opened are
  844.                     skipped.  An empty pathspec sends all files in the current
  845.                     directory.  A directory name expands to all regular files in that
  846.                     directory.
  847.  
  848.                     If an error aborts a file transmission (retries exhausted, etc.),
  849.                     batch transfers terminate.  The sb command will send files with
  850.                     Clink/SEAlink protocol if the receiving program requests Clink.
  851.  
  852.                     EXAMPLE: sb -k *.com   sends *.com using 1024 byte packets.
  853.  
  854.  
  855.  
  856.                                           13
  857.  
  858.  
  859.  
  860.  
  861.  
  862.  
  863.  
  864.  
  865.  
  866.                     NOTE The receiver must be commanded to receive the files with an rb
  867.                     or rz command.
  868.  
  869.  
  870.                   sx [-options] file   Send a single file using the Ward Christensen
  871.                     XMODEM or XMODEM/CRC protocol.  The receiving program may request
  872.                     use of a 16 bit CRC, which is more accurate than the default
  873.                     checksum.  DOS files sent this way will have Control-Z (CPMEOF)
  874.                     garbage characters appended to make the file length a multiple of
  875.                     the packet size.
  876.  
  877.                     EXAMPLE: sx foo.com
  878.                     EXAMPLE: sx -k foo.com (1024 byte blocks)
  879.  
  880.                     NOTE: The receiver must be commanded to receive the file with an rx
  881.                     filename or rc filename command.
  882.  
  883.                   sz [-options] [PREFIX=p | ONAME=x] pathspec   Send the files specified
  884.                     in pathspec using ZMODEM Batch Protocol.  The +, a, b, n, N, r, and
  885.                     y options are sent to the receiving program.  Only one of the a, b,
  886.                     or r options may be specified.  Only one of the +, n, N, or y
  887.                     options may be specified.  The pathname, length, and modification
  888.                     time of each file are transmitted.  Files which cannot be opened are
  889.                     skipped.  An empty pathspec sends all files in the current
  890.                     directory.  A directory name expands to all regular files in that
  891.                     directory.
  892.  
  893.                     If ONAME=x is given after the options (if any) and before the file
  894.                     name(s), x will be used as the COMPLETE destination pathname instead
  895.                     of each file's actual pathname.
  896.  
  897.  
  898.           Examples:
  899.  
  900.                     EXAMPLE: sz -y ONAME=B:/spiked/secret /soviet/sdi/newlaser.doc
  901.                     results in the destination file secret on drive B: in the /spiked
  902.                     directory.  (Destination directories must exist and be writable).
  903.  
  904.                     If instead PREFIX=p is given after the options (if any) and before
  905.                     the file name(s), p will bew added to the destination pathname(s) as
  906.                     a prefix.
  907.  
  908.                     EXAMPLE: sz -y PREFIX=C:/FOO.BAZ/ /biff/bam/aardvark.wak
  909.                     results in the destination file "C:/FOO.BAZ/aardvark.wak" (the
  910.                     destination directories must exist and be writable).
  911.  
  912.  
  913.                     EXAMPLE: sz *.com   Sends all files with a .com extension.
  914.  
  915.                     EXAMPLE: sz -r ??log   Crash Recovery sends only the new data if the
  916.                     receiver has incomplete versions of these files.
  917.  
  918.                     EXAMPLE: sz -fn src/*.c src/*.h maildir
  919.  
  920.  
  921.  
  922.                                           14
  923.  
  924.  
  925.  
  926.  
  927.  
  928.  
  929.  
  930.  
  931.                     sends only the newer source files in the src subdirectory, and all
  932.                     new files in the maildir subdirectory.
  933.  
  934.                     EXAMPLE: zcommand "sz -fn /bin /wp"
  935.                     commands a remote ZCOMM system in Host Operation (unrestricted) to
  936.                     send all new files in the /bin and /wp directories.
  937.  
  938.                     EXAMPLE: sz -Yn *.c   sends only newer versions of files that
  939.                     already exist at the destination.
  940.  
  941.                   szb [-options] [PREFIX=p | ONAME=x] pathspec As above, but "falls
  942.                     back" to YMODEM if the receiver cannot receive with ZMODEM protocol.
  943.  
  944.  
  945.  
  946.           ──────────────────────────────────
  947.           EXAMPLES OF FILE TRANSFER COMMANDS:
  948.           ──────────────────────────────────
  949.  
  950.           RECEIVE (DOWNLOAD) COMMANDS:
  951.           ---------------------------
  952.  
  953.           ┌─ Transfer Command   ┌──── Transfer Options
  954.           │                     │
  955.  
  956.           rz     [-abeEmMnpPrt+YZy] [dir] [file ...]     (ZMODEM-90 receive)
  957.  
  958.           rz     [-abenprt+Yy] [dir] [file ...]          (ZMODEM receive)
  959.  
  960.           rb     [-abt+y] [dir] [file ...]               (YMODEM receive)
  961.  
  962.           rb -g  [-abt+y] [dir] [file ...]               (YMODEM-g receive)
  963.  
  964.           rc     [-abt+y] file1                          (XMODEM/CRC receive)
  965.  
  966.           ro     [-abt+y] file1                          (XMODEM OverThruster receive)
  967.  
  968.           rx     [-abt+y] file1                          (XMODEM receive)
  969.  
  970.           rx -g  [-abt+y] file1                          (Qmodem-G receive)
  971.  
  972.  
  973.             **** Download directory specification and -g ignored w/o registration****
  974.  
  975.  
  976.           TRANSMIT (UPLOAD) COMMANDS:
  977.           --------------------------
  978.  
  979.           sz   [-abefnprtFYQS+yZ]     [-w[N]]  [PREFIX=p | ONAME=n] file   (ZMODEM send)
  980.  
  981.           sz   [-abeEfmMnpPrtFYQS+yZ] [-w[N]]  [PREFIX=p | ONAME=n] file   (ZMODEM-90)
  982.  
  983.  
  984.                 Pathnames are separated by spaces.  Wildcards are OK.
  985.  
  986.  
  987.  
  988.                                           15
  989.  
  990.  
  991.  
  992.  
  993.  
  994.  
  995.  
  996.  
  997.  
  998.  
  999.           sb      [-ft] [PREFIX=p | ONAME=n] file     (YMODEM or YMODEM-g send)
  1000.  
  1001.           sb -k   [-ft] [PREFIX=p | ONAME=n] file     (YMODEM-1k or YMODEM-g send)
  1002.  
  1003.           sx      [-t] file1                          (XMODEM, XMODEM/CRC,Qmodem-G send)
  1004.  
  1005.           sx -k   [-t] file1                          (XMODEM-1k send)
  1006.  
  1007.  
  1008.  
  1009.           Send files may be specified indirectly:
  1010.  
  1011.                                        dsz sz @C:files.lst
  1012.  
  1013.           sends the files in C:files.lst.  This provides another means of bypassing the
  1014.           DOS command line limit.  The first letter must be "@" and the third letter
  1015.           must be ":" to distinguish this from an ordinary pathname.  Pathnames in the
  1016.           indirection file may be separated by any combination of space(s), tab(s), CR
  1017.           and/or LF.  No spaces may appear inside a pathname; "FOO     .BAR" won't work.
  1018.  
  1019.  
  1020.  
  1021.  
  1022.           ─────────────────────
  1023.           FILE TRANSFER OPTIONS:
  1024.           ─────────────────────
  1025.  
  1026.               Options modify the way the protocol file transfer commands send and
  1027.               receive files.  They are reset before each command line.
  1028.  
  1029.               The a and b options are mutually exclusive.  With ZMODEM, a b option
  1030.               given to the sender or receiver will override any a option.
  1031.  
  1032.               The +, r, N, n, p, and y options are mutually exclusive.  The Y option
  1033.               may be followed by the +, r, n, or N option.  Specifiying these
  1034.               options to the receiver overrides the ZMODEM sender's specification of
  1035.               these options.
  1036.  
  1037.  
  1038.            +  When receiving to a file already on disk, append the new data to
  1039.               the old file (if one exists).  This option is not allowed if DSZ.COM
  1040.               is Restricted.
  1041.  
  1042.               When sending files with ZMODEM, the + option commands the receiver
  1043.               to append to a file already on the receiver's disk.
  1044.  
  1045.               EXAMPLE: sz -+ ONAME=master.log *.log sends all .log files in the
  1046.               current directory to be appended to master.log on the receiver's
  1047.               computer.
  1048.  
  1049.  
  1050.            a  (ASCII) The a option applies to files received with XMODEM, YMODEM,
  1051.  
  1052.  
  1053.  
  1054.                                           16
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060.  
  1061.  
  1062.  
  1063.               or ZMODEM protocol.  It converts newlines not preceded by CR to
  1064.               CR/LF pairs.  NULL, RUBOUT, and all characters in each packet
  1065.               beginning with Ctrl-Z are excluded.  The a option is useful when
  1066.               receiving text files without carriage returns directly from Unix
  1067.               systems.
  1068.  
  1069.               When sending with ZMODEM, the a option instructs the receiver to
  1070.               convert text files to the conventions used in its operating
  1071.               environment.
  1072.  
  1073.               The a option does not apply to Kermit.  Files transferred with the
  1074.               a option cannot be processed with the ZMODEM r (recover/resume)
  1075.               option.
  1076.  
  1077.               EXAMPLE: rc -a program.c receives program.c and converts end of
  1078.               lines to CR/LF.
  1079.  
  1080.  
  1081.            b  (Binary) With ZMODEM, inhibits the receiver from translating the
  1082.               file contents.  If either the ZMODEM sender or receiver specifies b
  1083.               option, any contrary requests will be ignored.
  1084.  
  1085.               EXAMPLE: sz -b program.exe
  1086.  
  1087.  
  1088.            e  Normally, ZMODEM senders escape XON, XOFF, Ctrl-P, CR-@-CR, and
  1089.               Ctrl-X, and ZMODEM receivers ignore XON and XOFF.  The e option
  1090.               escape all control characters when sending files with the ZMODEM
  1091.               protocol.
  1092.  
  1093.               SEE ALSO: zmtxesc, zmrxesc string parameters
  1094.  
  1095.  
  1096.            E  With ZMODEM-90, force 8th bit encoding even if the transmission
  1097.               medium appears to support 8 bits.[2]
  1098.  
  1099.  
  1100.            f  Send the full pathname as specified (exclusive of disk identifier)
  1101.               when using a batch send command.  Normally only the file name
  1102.               portion (without any directory prefix) is transmitted.  The f
  1103.               option applies to batch file transmission with the kermit sb, sb,
  1104.               send, and sz commands.
  1105.  
  1106.               EXAMPLE: cd /src; sz -f robot/r2d2.h sends the file with the
  1107.               pathname robot/r2d2.h.
  1108.  
  1109.               EXAMPLE: sz -f /src/robot/vox/3tpi0.*
  1110.  
  1111.               SEE ALSO: PREFIX=p flag for the sb and sz commands.
  1112.  
  1113.  
  1114.            F  Insert a pause after each transmitted data subpacket transmitted
  1115.               with ZMODEM.  This is useful in certain situations when
  1116.               conventional flow control methods are unavailable, ineffective, or
  1117.  
  1118.  
  1119.  
  1120.                                           17
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126.  
  1127.  
  1128.  
  1129.               unreasonably slow (i.e., "broken").  The length of pause is set by
  1130.               the zmodem F numeric parameter.
  1131.  
  1132.               EXAMPLE: sz -F honker.dat
  1133.  
  1134.               SEE ALSO: zmodem F numeric parameter
  1135.  
  1136.  
  1137.            g  Given to the receiving program, the g option to the rb command
  1138.               allows the sender and receiver to dispense with acknowledging each
  1139.               transmitted packet when using YMODEM batch transfers.  YMODEM-g
  1140.               increases throughput when the transmitting medium itself (direct
  1141.               connection, X.PC session, or error correcting modems) provides
  1142.               error free transmission.  The transmitting medium can use XOFF and
  1143.               XON to enforce flow control.
  1144.  
  1145.               If the transmitting medium does not enforce flow control,[3] the
  1146.               user must insure the receiver is not overrun.  ZCOMM on a PC or XT
  1147.               accepts data at 9600 bps without flow control when the file is
  1148.               being written to a hard disk or ramdisk, provided no memory resident
  1149.               programs or special drivers hog CPU cycles.
  1150.  
  1151.               If an error is detected when the g option is used, the transfer is
  1152.               aborted.
  1153.  
  1154.               EXAMPLE: rb -g
  1155.  
  1156.               The g option may also be used with the rx command to receive files
  1157.               from Qmodem's G protocol.
  1158.  
  1159.  
  1160.            k  Use 1024 byte (1K) packets with the sb and sx commands.  The
  1161.               default packet length is 128.  This increases throughput when the
  1162.               speed is high relative to the response times of the communications
  1163.               channel and the computers.  The k option is useful with 9600 or
  1164.               19200 bps transfers with directly connected timesharing systems.
  1165.               The k option may not work properly uploading to some systems,
  1166.               particularly heavily loaded or poorly implemented timesharing
  1167.               systems at high speeds.  The k option is valid only when sending to
  1168.               ZCOMM, Unix rb, or other compatible programs.  If the file length
  1169.               is not a multiple of 1024, the remainder of the file will be sent
  1170.               with 128 byte blocks.  This option does not affect Kermit
  1171.               transfers.
  1172.  
  1173.               EXAMPLE: sb -k *.c *.h
  1174.  
  1175.               With the sz command, the k option forces an initial 1024 byte
  1176.               subpacket length.
  1177.  
  1178.  
  1179.            m  (ZMODEM-90) Activate Moby Turbo(TM) for maximum throughput on
  1180.               compressed files sent over completely transparent connections.
  1181.               Moby Turbo can not be used with software flow control or over
  1182.               networks that reserve control characters.
  1183.  
  1184.  
  1185.  
  1186.                                           18
  1187.  
  1188.  
  1189.  
  1190.  
  1191.  
  1192.  
  1193.  
  1194.  
  1195.  
  1196.  
  1197.            M  Lock out Moby Turbo even if the other program has given the m
  1198.               option.  This is useful if the transmission path does not support
  1199.               complete transparency.
  1200.  
  1201.  
  1202.            n  (ZMODEM) Each file is transferred if the corresponding destination
  1203.               file does not exist, or if the source file is newer.  The n option
  1204.               can be given with either the sz or rz commands.  This option is not
  1205.               allowed if the receiver is Restricted.
  1206.  
  1207.               EXAMPLE: sz -n *.* attempts to send all files in the current
  1208.               directory.  Only those files that do not exist in the destination
  1209.               directory, and those for which the source is newer will be sent.
  1210.  
  1211.  
  1212.            N  (ZMODEM) Transfer the file if the corresponding destination file
  1213.               does not exist, or if the source file is newer or longer.  The N
  1214.               option be used with the sz and rz commands.  This option is not
  1215.               allowed if the receiver is Restricted.
  1216.  
  1217.               EXAMPLE: sz -N *.*
  1218.  
  1219.  
  1220.            p  (ZMODEM) Protect destination file; bypass this file if it already
  1221.               exists on the destination system.
  1222.  
  1223.  
  1224.            P  (ZMODEM-90) When transferring files over 7 bit paths, pack 4 8-bit
  1225.               bytes into 5 7-bit bytes for transmission instead of quoting the
  1226.               8th bit. This increases transmission speed on compressed files.
  1227.  
  1228.  
  1229.            q  (Quiet) suppresses block by block status line update during Kermit
  1230.               and X/YMODEM file transfers.
  1231.  
  1232.  
  1233.            r  (ZMODEM) Resume/Recover an interrupted file transfer with the
  1234.               ZMODEM protocol.  May be given with either the sz or rz commands.
  1235.  
  1236.               The r option may be used to resume the transmission of a long file
  1237.               after a disconnect or power loss, without having to start over at
  1238.               the beginning of the file.  The r option may also be used when the
  1239.               source file grows from time to time and only the incremental
  1240.               portion needs to be sent.  The r option assumes that the contents
  1241.               of the destination file are identical to the corresponding
  1242.               beginning portion of the source file.  The r option should not be
  1243.               applied to a file that has been modified by the a option, or to a
  1244.               file that has been edited on the destination system.  This option
  1245.               is not allowed if the receiver is Restricted.
  1246.  
  1247.               EXAMPLE: sz -r hugefile.lst
  1248.  
  1249.  
  1250.  
  1251.  
  1252.                                           19
  1253.  
  1254.  
  1255.  
  1256.  
  1257.  
  1258.  
  1259.  
  1260.  
  1261.  
  1262.           rrr  As above, but the files are compared by taking a 32 bit CRC on the
  1263.                contents before deciding on whether to start a fresh transfer.
  1264.  
  1265.                EXAMPLE: sz -rr maybenewer.lst
  1266.  
  1267.  
  1268.               With the -rr option, all of the files are compared or transmitted
  1269.               by default.  The number of bytes used in the comparision may be
  1270.               restricted by setting the zmodem R numeric parameter to a number
  1271.               between 2048 and 32000 (1 billion on 32 bit flavors).
  1272.  
  1273.               EXAMPLE: zmodem pR20000
  1274.  
  1275.  
  1276.            s  SlugBait modifies the logic of ZMODEM sending to detect and report
  1277.               attempts at evading accountability for receiving files.  Such
  1278.               attempts are flagged with a Q status in the log of sent files.
  1279.               SnailBait adds a slight delay to file transmission, and a transfer
  1280.               that is cut off at the very end of file may very infrequently be
  1281.               reported with Questionable instead of ERROR status.
  1282.  
  1283.  
  1284.            S  When sending file(s) with ZMODEM, interrogate the receiving prgram
  1285.               for its serial number.  S option terminates when a serial number is
  1286.               received or when the call command is given.  Receiving file(s) with
  1287.               YMODEM or ZMODEM from programs providing a serial number also
  1288.               provides the other program's serial number.  The serial number
  1289.               received is listed by the performance log.
  1290.  
  1291.  
  1292.            t  Enter the term function after file transfer(s) complete.  The t
  1293.               option should not be used in commands given from within the term
  1294.               function, either directly or with soft key definitions.
  1295.  
  1296.  
  1297.            u  Unlink (remove, delete) the file after it has been sent with the sz
  1298.               command.
  1299.  
  1300.  
  1301.            v  View the data being transmitted or received.  Only correct data is
  1302.               displayed.  Viewing standard ASCII files does not interfere with
  1303.               correct transmission at high speeds, although throughput may be
  1304.               degraded.
  1305.  
  1306.               The output may be redirected to a capture file or DOS device with
  1307.               the > or >> command.  Unless output is redirected, this option must
  1308.               not be used when ZCOMM is in Host Operation.
  1309.  
  1310.  
  1311.           NwN   Use a window size of N bytes with the sz command, overriding the
  1312.                 zmodem w numeric parameter.  If N is missing, use a ZMODEM window
  1313.                 size of 4096 bytes.
  1314.  
  1315.  
  1316.  
  1317.  
  1318.                                           20
  1319.  
  1320.  
  1321.  
  1322.  
  1323.  
  1324.  
  1325.  
  1326.  
  1327.                 SEE ALSO: Flow Control Chapter 13, zmodem w numeric parameter
  1328.  
  1329.  
  1330.           NWN   Request the sending program to use a window size of N bytes,
  1331.                 overriding the sender's window size setting, 4096 bytes if N is
  1332.                 missing.
  1333.  
  1334.  
  1335.            y  Yes it is OK to replace a file already on disk when receiving a
  1336.               file.  If absent, the operator is given a choice of appending to
  1337.               the current file (a), erasing it (y) or aborting (n).  This option
  1338.               is not allowed if ZCOMM is Restricted.  When sending with ZMODEM,
  1339.               commands the receiver to replace a file on its disk.
  1340.  
  1341.  
  1342.            Y  (ZMODEM) Transfer only those files for which a file with the same
  1343.               pathname exists at the destination, overwriting the destination
  1344.               files.  The Y option may be followed by other ZMODEM options to
  1345.               further qualify the selection of files to transfer.  This option is
  1346.               not allowed if ZCOMM is Restricted.
  1347.  
  1348.               EXAMPLE: sz -Yn *.* If the source directory contains files A, B,
  1349.               and C, each dated today, and the destination directory contains B
  1350.  
  1351.  
  1352.           TzT  Use T minutes behind GMT (Greenwich Mean Time) as the local
  1353.                timezone instead of the z parameter value for the file(s)
  1354.                transferred with this command.
  1355.  
  1356.                EXAMPLE: sb -k -z300 ESTfile sends ESTfile corrected for creation
  1357.                in Eastern Standard Time.
  1358.  
  1359.  
  1360.            Z  Transmit files with compression.  The ZMODEM receiver must indicate
  1361.               its ability to decompress received files for this option to take
  1362.               effect.
  1363.  
  1364.               When sending between Unix systems, files are compressed with 12 bit
  1365.               Lempel-Ziv compression.  Otherwise, packets are transmitted with
  1366.               Run Length Encoding.
  1367.  
  1368.               Over slow channels, compression increases the transmission speed of
  1369.               compiler listings, screen dumps, etc. by up to 50 per cent.  LZW
  1370.               compression is more effective on more types of data than RLE
  1371.               compression.  Some files, including the Personal Computing Magazine
  1372.               ASCII Test File, speed up by more than an order of magnitude with
  1373.               either RLE or LZW compression.  Heavily encrypted data and
  1374.               compressed files, including ARC and ZOO archives, do not benefit
  1375.               from ZMODEM compression.
  1376.  
  1377.               The situation with fast compressed modems is more complex.  The
  1378.               benefits of ZMODEM compression will depend on the particular
  1379.               application; try the transfers with and without ZMODEM compression
  1380.               to determine the most efficient options.
  1381.  
  1382.  
  1383.  
  1384.                                           21
  1385.  
  1386.  
  1387.  
  1388.  
  1389.  
  1390.  
  1391.  
  1392.  
  1393.  
  1394.  
  1395.  
  1396.           ─────────────────────────────────────────────────────
  1397.           EXAMPLES OF FILE TRANSFER COMMANDS & SETUP PARAMETERS:
  1398.           ─────────────────────────────────────────────────────
  1399.  
  1400.           dsz sz c:foo.arc              (send 1 file with ZMODEM)
  1401.  
  1402.           dsz sz -m c:*.zip             (send all .ZIP files with MobyTurbo)
  1403.  
  1404.           dsz sz f1.c f2.c f3.c         (send 3 files with ZMODEM)
  1405.  
  1406.           dsz sz c:foo.* b:*.c          (send multiple files with ZMODEM)
  1407.  
  1408.           dsz sz -Z *.lst               (send text files with compression)
  1409.  
  1410.           dsz sz -r bigone.arc          (CRASH RECOVERY: resume interrupted transfer)
  1411.  
  1412.           dsz rz -r                     (CRASH RECOVERY: resume interrupted transfer)
  1413.  
  1414.           dsz rz -rr                    (CRASH RECOVERY with file comparison)
  1415.  
  1416.           dsz handshake both sz yzmodem.arc       (Hardware+Software handshake)
  1417.  
  1418.           dsz sz -n *.*                 (send files that are newer or rx has no copy)
  1419.  
  1420.           dsz sz -Yn *.*                (Only send files that are newer than receiver's
  1421.                                          copy)
  1422.                                         (Do not send files that do not exist on
  1423.                                          receiver's disk)
  1424.  
  1425.           dsz rz C:/UPLOADS             (receive files to specified directory #)
  1426.  
  1427.           dsz port 2 speed 38400 handshake both restrict rz
  1428.                                         (Restrict provides protection for BBS's)
  1429.  
  1430.           dsz rz  -y prog.arc           (ZMODEM, single file pathname override)
  1431.  
  1432.           dsz z pr1 rx foo.dat          (XMODEM receive, remove file if error)
  1433.  
  1434.           dsz pO60 ro foo.dat           (XMODEM/OverThruster receive, GEnie MNP #)
  1435.  
  1436.           DSZ LRC L-Y NEWPROG.ARC       (generate lower case "rc -y" command)
  1437.  
  1438.           dsz sz foo >debug.dmp         (Debugging data dump)
  1439.  
  1440.           dsz sz @C:/bbs/files.lst      (Indirect file list)
  1441.  
  1442.  
  1443.  
  1444.  
  1445.  
  1446.  
  1447.  
  1448.  
  1449.  
  1450.                                           22
  1451.  
  1452.  
  1453.  
  1454.  
  1455.  
  1456.  
  1457.  
  1458.  
  1459.  
  1460.           ──────────────────
  1461.           Dsz Interrupt Keys:
  1462.           ──────────────────
  1463.  
  1464.           Ctrl-Break   Terminates the transfer in progress.
  1465.           ALT-N        Abruptly terminates (NUKES) the transfer in progress.
  1466.           Ctrl-X       Typing a dozen Ctrl-X characters to another ZMODEM program
  1467.                        terminates ZMODEM operations.
  1468.           ALT-F        Skips the current file in ZMODEM transfers.
  1469.           ALT-B        Cancels the current ZMODEM session.
  1470.  
  1471.  
  1472.  
  1473.           ─────────────────────
  1474.           ENVIRONMENT VARIABLES:
  1475.           ─────────────────────
  1476.  
  1477.           The following DOS environment variables may be set to modify DSZ operation.
  1478.           DOS environment variables are set by giving a command to DOS.
  1479.  
  1480.           EXAMPLE: set DSZPORT=2
  1481.  
  1482.           These DOS "set" commands may be placed in your AUTOEXEC.BAT file or given just
  1483.           before you run your communications program.
  1484.  
  1485.  
  1486.           DIRRX  (Registered copies only.) Specifies the directory to receive (download)
  1487.               files.  If the sting in DIRRX ends with "/", directory and/or disk
  1488.               designators in the incoming pathname are stripped, and only the stem (name
  1489.               and extension) is used.  Otherwise, if an incoming file has an absolute
  1490.               pathname, the incoming pathname is used.
  1491.  
  1492.               EXAMPLE: set DIRRX=C:/rxdir/
  1493.               dsz rz -r
  1494.  
  1495.               EXAMPLE: set DIRRX=B:/
  1496.  
  1497.               The DOS "set" command defining the receive directory may be placed in your
  1498.               AUTOEXEC.BAT file.  Make certain there is enough environment space to hold
  1499.               this value.  Confirm this by typing "set" to the DOS prompt and verifying
  1500.               the DIRRX value is listed correctly.
  1501.  
  1502.  
  1503.           DSZFILES  May contain a list of up to 9999 pathnames to transmit, with entries
  1504.               separated by spaces.  If present, DSZFILES is used in place of a normal
  1505.               command line list of files to send with the sb and sz commands.
  1506.  
  1507.               EXAMPLE: C>set DSZFILES=file1 file2 file3 *.c
  1508.               C>dsz port 2 handshake on sz -rr
  1509.  
  1510.              In practice, this string would be built up by a calling program and passed
  1511.               to DSZ with a "spawnvpe", "execvpe", or similar subroutine call.
  1512.  
  1513.  
  1514.  
  1515.  
  1516.                                           23
  1517.  
  1518.  
  1519.  
  1520.  
  1521.  
  1522.  
  1523.  
  1524.  
  1525.               SEE ALSO: Pathname list specification @C:files.lst
  1526.  
  1527.  
  1528.           DSZLOG   log file to receive entries for files sent and received.  (Default
  1529.                    null).  Sample entries:
  1530.  
  1531.           Z  46532 38400 bps 3324 cps   0 errors    66 1024 DSZ.COM 1177
  1532.           Z 124087 19200 bps 1880 cps   0 errors     6 1024 MXY.TMP 1177
  1533.  
  1534.               Transfer times are based on the DOS time of day clock and have up to two
  1535.               seconds' uncertainty.  As with all protocol throughput reports generated
  1536.               by Omen Technology programs (and contrary to the false claims of some
  1537.               critics), DSZ's throughput figures for ZMODEM, Kermit, and True YMODEM(TM)
  1538.               transfers do not take "credit" for pathname and/or protocol overhead
  1539.               characters.  DSZ's throughput reports do not include the time required to
  1540.               send the pathname.  This understates the true time required to transfer
  1541.               files, but the time required to send the pathname often depends on the
  1542.               alacrity of the operator, and thus does not always reflect the performance
  1543.               of the protocol itself.
  1544.  
  1545.               Transfers measuring less than one second are reported as having 9999
  1546.               characters per second throughput.
  1547.  
  1548.               The unlabeled numeric field after the error (retry) count is the number of
  1549.               flow control stoppages encountered sending the file.  This number gives an
  1550.               indication of flow control restrictions (overloaded networks, etc.)
  1551.               encountered during the transfer.
  1552.  
  1553.               The last numeric field before the file name is the YMODEM block size or
  1554.               ZMODEM subpacket length used for the last block in the file.
  1555.  
  1556.               The last field is the serial number of the other program, or -1 if this
  1557.               information is not available.
  1558.  
  1559.               The code letter indicates the type of transfer, Z (ZMODEM), S (X/YMODEM),
  1560.               R (X/YMODEM), E (error), or L (transfer terminated by loss of data
  1561.               carrier).
  1562.  
  1563.               WARNING: If DSZ encounters a loss of carrier or other fatal error
  1564.               condition before a file COMMENCES transmission, a log entry may not be
  1565.               made.
  1566.  
  1567.  
  1568.           DSZOPT
  1569.               (Registered copies only) String containing default options for DSZ file
  1570.               transfers.  Options are optional modifiers to the DSZ sz, rz, sx, rx, sb,
  1571.               rb commands.
  1572.  
  1573.               A T may be appended to the string to force DSZ to exit after it has
  1574.               recognized a ZMODEM AutoDownload(Tm) request.
  1575.  
  1576.               An 8g may be appended to the string to make BBS (ANSI) graphics the
  1577.               default for DSZ's t command.  The ability to preset these options is
  1578.               especially helpful for controlling ZMODEM automatic downloads from DSZ's t
  1579.  
  1580.  
  1581.  
  1582.                                           24
  1583.  
  1584.  
  1585.  
  1586.  
  1587.  
  1588.  
  1589.  
  1590.  
  1591.               command.
  1592.  
  1593.               EXAMPLE: C>set DSZOPT=r
  1594.               Enables DSZ's Intelligent Crash Recovery(TM) as a default.
  1595.  
  1596.               Let's say you wish ZMODEM crash recovery, and BBS "graphics" for the DSZ
  1597.               term function:
  1598.               C>set DSZOPT=r8g
  1599.  
  1600.               WARNING: Do NOT include "ena" or any other commands in the DSZOPT string.
  1601.               With the exception of the "8g" mode, only **options** may be placed in the
  1602.               DSZOPT string!  (Options are the letters that modify the sz, rz, sb, etc.
  1603.               commands.  In "rz -r", "r" is an option.)
  1604.  
  1605.  
  1606.           MAXBYTES  Maximum number of bytes allowed for transfer.  If this number is
  1607.               exceeded, DSZ skips the offending files (ZMODEM) or aborts remaining files
  1608.               in the batch (YMODEM).
  1609.  
  1610.  
  1611.           DSZPORT   Default communications port override, default 1.
  1612.  
  1613.               EXAMPLE: C>set DSZPORT=2
  1614.  
  1615.  
  1616.           ZONE   sets the z numeric parameter to the number of minutes the current local
  1617.                time lags GMT time.  PDT or MST corresponds to 420.  PST corresponds to
  1618.                480.
  1619.                EXAMPLE:
  1620.                C>set ZONE=420
  1621.  
  1622.  
  1623.  
  1624.           ──────────────────────────
  1625.           1. IN CASE OF DIFFICULTY:
  1626.           ──────────────────────────
  1627.  
  1628.           If you have difficulty getting DSZ to work, start with the following command
  1629.           to DSZ, given directly from the DOS prompt, without running any TSR or other
  1630.           COMM program:
  1631.  
  1632.                                  dsz port 1 speed 2400 d t
  1633.  
  1634.           Type it exactly as it appears above; do NOT use upper case.
  1635.  
  1636.           (Change the port number and speed as necessary.  Use only COM1 or COM2 for
  1637.           testing.)
  1638.  
  1639.           This connects you to the modem.  Dial a bulletin board by typing AT commands
  1640.           to the modem ("ATDP621-3746 <enter>") to make it dial the BBS.  Log in as
  1641.           usual.  Then, request a ZMODEM download of a file you don't already have.  The
  1642.           file will download automatically, you don't have to do anything.  This
  1643.           procedure verifies the correct operation of DSZ.
  1644.  
  1645.  
  1646.  
  1647.  
  1648.                                           25
  1649.  
  1650.  
  1651.  
  1652.  
  1653.  
  1654.  
  1655.  
  1656.  
  1657.  
  1658.           ────────────
  1659.           1.1  LOCKUPS
  1660.           ────────────
  1661.  
  1662.           1.1.1  Insufficient Memory
  1663.  
  1664.           DSZ complains when it detects insufficient memory to operate.  When calling
  1665.           DSZ from another program, there may be ALMOST enough memory for proper
  1666.           operation, but DSZ locks up during a transfer or the calling program freezes
  1667.           after DSZ displays the "DSZ Finished" message.
  1668.  
  1669.           Sometimes there is a message about insufficient memory, sometimes just a
  1670.           lockup and no message.  To verify this problem, call CHKDSK from within your
  1671.           comms program (not from DOS!) by defining it as an external protocol.  If you
  1672.           use an interface program (Hotkeyz, Prodoor, etc.), you must call CHKDSK from
  1673.           that program, as those programs also reduce the memory available to DSZ.
  1674.  
  1675.           CHKDSK should report at least 64k free memory.  If less memory is reported,
  1676.           reduce the size of the COMMS program's capture buffer, or reboot the system
  1677.           with fewer/smaller device drivers and TSR programs.  Calling DSZ directly from
  1678.           the comms program instead of from an interface also saves memory.
  1679.  
  1680.  
  1681.           1.1.2  Environment TOO BIG
  1682.  
  1683.           A large environment may cause DSZ.COM to lockup.  The size of the environment
  1684.           (the amount of text you get when you give the DOS "set" command) is subtracted
  1685.           from the data space available to 8086 C programs.  This can be a problem with
  1686.           DSZ.COM, whose 8086 tiny model limits code, data, stack, and environment to 64
  1687.           kb TOTAL.  If DSZ.COM complains about the environment being too big, you
  1688.           should correct the problem.  Use DSZ.EXE (compiled with 8086 small model) to
  1689.           alleviate this problem.
  1690.  
  1691.  
  1692.           1.1.3  Bad COMM Port Configuration
  1693.  
  1694.           DSZ is fastidious about which interrupt vectors it takes over.  Unlike some
  1695.           programs, DSZ uses only the correct interrupt vector for its interrupt service
  1696.           routine.  (This allows multitasking.)
  1697.  
  1698.           DSZ obtains and releases this vector with standard DOS function calls.  This
  1699.           allows multi line operation under DESQview and other multitasking systems.
  1700.  
  1701.           Incorrectly configured serial ports that work with programs that pig out both
  1702.           IRQ3 and IRQ4 will lock up with DSZ.  If DSZ locks up the machine as soon as
  1703.           it tries to send or receive data, this is usually the fault.  Make sure the
  1704.           comm port is strapped correctly; COM1 uses IRQ4, COM2 uses IRQ3.  DSZ will
  1705.           lock up if the comm port is not properly set up.
  1706.  
  1707.           In addition, DSZ will not work properly if two devices are connected to the
  1708.           same IRQ line, even when some other programs (that don't use interrupts as
  1709.           intensively) do work normally on the same machine.
  1710.  
  1711.  
  1712.  
  1713.  
  1714.                                           26
  1715.  
  1716.  
  1717.  
  1718.  
  1719.  
  1720.  
  1721.  
  1722.  
  1723.           COM3 and above are not widely standardized.  If you have problems with COM3,
  1724.           chances are your "COM3" is non standard.
  1725.  
  1726.  
  1727.           1.1.4  No Carrier Detect
  1728.  
  1729.           If you see a No Carrier Detect message, and you haven't lost the connection,
  1730.           you need to give the d command:
  1731.                                         dsz port 1 speed 2400 d t
  1732.  
  1733.           Better yet, fix your modem cable or modem to allow proper operation of the
  1734.           Carrier Detect signal (CD)!
  1735.  
  1736.           Some BBS and/or "door" programs hang when the program (such as DSZ) they call
  1737.           returns with a non 0 exit status.  Please refer to the "EXIT STATUS" chapter
  1738.           of the document for more information.
  1739.  
  1740.  
  1741.           1.1.5  DOS 3.x
  1742.  
  1743.           DOS 3.x systems may need to have a "STACKS = 8,256" line in CONFIG.SYS to
  1744.           prevent antisocial behavior. This is required on the NEC Multispeed, or if
  1745.           certain TSR's are used.
  1746.  
  1747.  
  1748.           1.1.6  Perstor Controllers
  1749.  
  1750.           Several reports have been received indicating Perstor disk controllers
  1751.           interfere with data communications.  Perstor is reportedly working on a fix.
  1752.  
  1753.  
  1754.           1.1.7  IBM PS/2 Model 50Z
  1755.  
  1756.           Early samples of this machine have a design error on the motherboard that
  1757.           causes comms programs to lock up the machine.  Replacing the motherboard with
  1758.           a correctly functioning unit from current production corrects the problem.
  1759.           The part number of the replacement PS2/50 Z motherboard is 35F5928.
  1760.           (Information provided by John M. Choma 73047,3566) U.S. IBM has stonewalled on
  1761.           this issue, but in December 1988 agreed to replace the defective motherboards
  1762.           under warranty.
  1763.  
  1764.  
  1765.           1.1.8  Brain Damaged UARTS
  1766.  
  1767.           Omen Technology has received reports of problems with buggy 8250 type UART
  1768.           integrated circuits in Leading Edge modem boards, serial port interfaces, and
  1769.           computers.  The defective chip logic affects high performance software.
  1770.           Replacing the buggy chip with a newer chip (16450 or NS16550AN) corrects the
  1771.           problem.
  1772.  
  1773.           The UM82450 chip in the Zoom 2400HC also appears to cause problems.
  1774.  
  1775.           The NS16550AN is a pin compatible plug in replacement for 8250 and 16450
  1776.           serial chips.  Omen Technology software enables the FIFO buffer in the
  1777.  
  1778.  
  1779.  
  1780.                                           27
  1781.  
  1782.  
  1783.  
  1784.  
  1785.  
  1786.  
  1787.  
  1788.  
  1789.           NS16550AN to prevents loss of data from poorly written device drivers, TSR
  1790.           programs, etc.
  1791.  
  1792.           The NS16550AN has better electrical characteristics than the older UART chips.
  1793.           386 and fast 286 machines should use the NS16550AN for best results.  Omen
  1794.           Technology software has been written to allow time for the older UART chips to
  1795.           operate. However, there is a limit to how much the software can rearrange chip
  1796.           accesses without resorting to performance robbing wait loops.  Some other
  1797.           software is not as forgiving of slow chips.
  1798.  
  1799.           Jameco Electronics at 415-592-8097 sells National NS16550AN chips mail order
  1800.           (credit card) in small quantities.  Another source is Arrow Electronics at
  1801.           800-932-7769 (516-467-1000).  Be sure to ask for the NS16550AN.  It's
  1802.           important to get the "AN" part, other versions won't do.
  1803.  
  1804.           PC BRAND at 800-722-7263 (in Illinois 312-226-5200) is selling I/O cards in
  1805.           which both UARTs are socketed, allowing them to be replaced by NS16550AN
  1806.           devices.  Shipping and handling is included in their $45 price.  (From Roger
  1807.           1.1.9  Hough)
  1808.  
  1809.  
  1810.           1.1.10  Everex Internal Modems
  1811.  
  1812.           Numerous reports have been received concerning difficulties with Everex modem
  1813.           cards.  Some of these cards contain buggy 8250 chips which are not up to the
  1814.           demands of full duplex streaming protocols such as ZMODEM.  Replacing the
  1815.           buggy 8250 chip with a 16450 (or better yet NS16550AN) chip corrects these
  1816.           problems.
  1817.  
  1818.  
  1819.           1.1.11  Weird Iron
  1820.  
  1821.           A few machines, some with V20 CPUs, don't like DSZ.COM.  We have not been able
  1822.           to repeat this; TeleGodzilla (using a V20) runs DSZ.COM without a hitch.
  1823.           Switching to DSZ.EXE has cleared up the problems on other machines.
  1824.  
  1825.  
  1826.           1.1.12  Will the real YMODEM please stand up?
  1827.  
  1828.           Some XMODEM programs claiming to support YMODEM do not send or accept the
  1829.           YMODEM pathname block.  1024 byte XMODEM is XMODEM-1k, not the YMODEM defined
  1830.           by Ward Christensen in 1985 when he invented the term YMODEM.  1987 and later
  1831.           versions of YMODEM.DOC remind the reader of the official YMODEM definition,
  1832.           which has not changed since YMODEM's coinage in 1985.
  1833.  
  1834.  
  1835.           1.1.13  286 and 386 Extended Memory
  1836.  
  1837.           Virtual memory disk caches and ramdisks using 80286 or 80386 extended memory
  1838.           require a kludge hardware reset of the CPU chip to return to the normal "real
  1839.           mode" after accessing extended memory.  This interference to the interrupt
  1840.           response time causes lost characters on comm ports, and may be minimized by
  1841.           specifying shorter memory transfers.
  1842.  
  1843.  
  1844.  
  1845.  
  1846.                                           28
  1847.  
  1848.  
  1849.  
  1850.  
  1851.  
  1852.  
  1853.  
  1854.  
  1855.           Switching to a National NS16550AN UART chip helps tremendously, allowing
  1856.           transfers at 115200 bps instead of 9600 bps with a standard 8250.  Please
  1857.           refer to the subchapter on "Brain Damaged UARTs".
  1858.  
  1859.  
  1860.           ────────────────────
  1861.           BACKGROUND OPERATION:
  1862.           ────────────────────
  1863.  
  1864.           Three DESQview description files are provided to demonstrate background
  1865.           operation with modest (66 kb window) memory requirements.  DSZ uses tight
  1866.           C/ASM code, table driven CRC generators, and buffered receive and transmit for
  1867.           good performance in the background without hogging CPU cycles.  On a QIC Labs
  1868.           8 mHz PC-AT clone, DSZ can download files in the background (3 background
  1869.           clock ticks, 9 foreground clock ticks) with a throughput better than 9600 bps.
  1870.  
  1871.           2S   Prompts for file name(s) and sends them with ZMODEM protocol.  File: 2S-
  1872.                PIF.DVP
  1873.  
  1874.           2T   Talks to the modem and allows manual YMODEM (F3) or automatic ZMODEM
  1875.                downloads.  File: 2T-PIF.DVP
  1876.  
  1877.           2A   Like 2T, but using Quarterdeck's dvansi.com memory resident ANSI CRT
  1878.                device driver to process ANSI screen codes.  File: 2A-PIF.DVP DS.BAT is
  1879.                the batch file used by 2A.
  1880.  
  1881.           These files are written for a port 2 local connection and \TMP directory, but
  1882.           may be modified to suit your requirements using the DESQview CP command.  The
  1883.           W numeric allows DESQview to close the window after DSZ finishes, providing a
  1884.           pleasant user interface.
  1885.  
  1886.           Other DVPs, Scripts, and Batch files are available on the DESQView conference
  1887.           on the Sound of Music as DVDSZ20Z.ARC.
  1888.  
  1889.           Please consult the DESQview documentation for instructions on installation
  1890.           procedure for the DVP files.
  1891.  
  1892.           Operation at high speed (above 9600 bps) may require the DESQview "Optimize
  1893.           communications" performance Advanced Setup option.
  1894.  
  1895.           Newer versions of DESQview may require more "common memory" allocation (6-8 k
  1896.           bytes) to operate with DSZ.  Some versions of DESQview do not operate properly
  1897.           with DSZ; DESQview 2.0 is known to work, and DESQview 2.25 is reported to have
  1898.           fixed bugs in intermediate versions.
  1899.  
  1900.           On 286 and 386 machines, some DESQview operations involve swapping memory
  1901.           contents with buffers in extended memory.  As with extended memory ramdisks
  1902.           and disk caches, this causes errors with high speed communications.  The
  1903.           considerations discussed in the "286 and 386 Extended Memory" subchapter apply
  1904.           here.  Since this DESQview extended memory swapping is asynchronous with
  1905.           respect to DSZ's file transfers, "handshake slow" doesn't help.  The solution
  1906.           is to force DESQview's memory swaps to use smaller blocks (with interrupts
  1907.           allowed between blocks) and/or use NS16550AN chips for the serial interface.
  1908.  
  1909.  
  1910.  
  1911.  
  1912.                                           29
  1913.  
  1914.  
  1915.  
  1916.  
  1917.  
  1918.  
  1919.  
  1920.  
  1921.           When running a comm program under DESQview or any related multitasking
  1922.           executive, DSZ must be called directly from the comm program, in the same
  1923.           window.  DO NOT open a separate window for DSZ unless you were about to power
  1924.           down the computer anyway.
  1925.  
  1926.           With some communications programs, you can make the call, log in, and then
  1927.           exit (closing the window) without disconnecting the modem.  At this time you
  1928.           can fire up DSZ with the "t" command to allow YMODEM or ZMODEM downloads in a
  1929.           small window.
  1930.           Example File: 2A-PIF.DVP
  1931.  
  1932.           Alternatively, you can start DSZ from the DOS prompt, then type "AT" commands
  1933.           to the modem to call the bulletin board.  DESQview's "learn" facility may be
  1934.           helpful here.
  1935.  
  1936.  
  1937.           ───────
  1938.           PROCOMM:
  1939.           ───────
  1940.  
  1941.           DSZ may not operate properly when called from ProComm if ProComm has files
  1942.           open at the time.
  1943.  
  1944.           A number of reports have been received of problems running DSZ from ProComm
  1945.           Plus because of insufficient memory.  Please refer to the subchapter on
  1946.           LOCKUPS.
  1947.  
  1948.           When running under ProComm's Host mode, failure to use the DSZ CON command may
  1949.           cause ProComm to lock up the computer, or at least interfere with file
  1950.           transfers, etc.
  1951.  
  1952.           EXAMPLE: DSZ CON sz %1
  1953.  
  1954.           A number of third party programs have been developed to provide a congenial
  1955.           interface to DSZ if you have enough memory to spare.  The POE, PCALL, DSZ_ZAP,
  1956.           and PROZ programs have been popular in interfacing DSZ to ProComm's editor
  1957.           gateway.  These programs are available on many bulletin boards.
  1958.  
  1959.           Hint: the DOS PATH environment variable must include ProComm's directory to
  1960.           allow POE to locate all the POE files,.  The POE files should be stored in the
  1961.           ProComm directory.  Setting the "PROCOMM" environment variable is
  1962.           insufficient.
  1963.  
  1964.  
  1965.  
  1966.           ───────────────────
  1967.           2. ERROR MESSAGES:
  1968.           ───────────────────
  1969.  
  1970.           COM2 1200 bps Carrier Detect enabled Handshake slow
  1971.           Command line = (commands)
  1972.           This is a normal message displayed to help resolve problems with incorrect
  1973.           batch files.  The port number, speed, carrier detect ("enabled" or "DISABLED")
  1974.           and "handshake" indicate the selected mode of operation.
  1975.  
  1976.  
  1977.  
  1978.                                           30
  1979.  
  1980.  
  1981.  
  1982.  
  1983.  
  1984.  
  1985.  
  1986.  
  1987.           DSZ FINISHED! exit code = 0
  1988.           This is DSZ's normal exit when at least one file has been transferred and no
  1989.           unrecoverable errors have been detected.  If an error such as a failed file
  1990.           transfer had been detected, the exit code would be 1, or the value set in the
  1991.           Q numeric parameter.
  1992.  
  1993.           As the message implies, DSZ has done all of its processing, and has return the
  1994.           communications port and vector to its original value before displaying this
  1995.           message.  If the computer locks up after this message is displayed, there's
  1996.           something wrong with the program that called DSZ, not with DSZ itself.
  1997.  
  1998.           Unknown Machine Type XX, 'a' parameter preset to 6000 indicates a ROM BIOS
  1999.           that does not follow the IBM specification for identifying the machine type.
  2000.           If your computer causes DSZ to display this message, you may set the a numeric
  2001.           parameter described elsewhere in this document.  This message is generated
  2002.           before any commands are read, so do not be alarmed when you "discover" that
  2003.           setting the a parameter doesn't make this message go away.  The a parameter
  2004.           does not affect ZMODEM transfers.
  2005.  
  2006.           Please send us a postcard or letter indicating the reported hex value for
  2007.           machine Type, name of the computer, and its speed so we can include that
  2008.           machine type in a future release.
  2009.  
  2010.           Need more memory to run DSZ or Abnormal program termination is displayed by
  2011.           the TurboC startup routine if DSZ is run in too small a memory partition.  If
  2012.           you see this message, use a larger memory partition for DSZ or remove some
  2013.           memory resident programs.  This message may also appear if the calling program
  2014.           fails to free memory before calling DSZ.
  2015.  
  2016.           No Carrier Detect is displayed when DSZ recognizes a lack of carrier detect
  2017.           signal from the modem.  Most support calls concerning "No Carrier Detect" are
  2018.           caused by the user failing to tell DSZ to use the correct port.  DSZ does not
  2019.           magically divine the COM port number; if the default COM1 is incorrect, DSZ
  2020.           must be told what port to use with the port command or the DPORT environment
  2021.           variable.
  2022.  
  2023.           No Carrier Detect may also be caused by a line disconnect, defective cable, or
  2024.           incorrect modem strapping.  It may be disabled with the d command.  Sometimes
  2025.           this is caused by setting the B parameter to too large a value.
  2026.  
  2027.           Garbage Count Exceeded Indicates ZMODEM has not detected a valid start of
  2028.           header in a reasonable number of characters.
  2029.  
  2030.           If DSZ becomes "stuck" on emitting this messages, it is possible the sending
  2031.           program may not be able to recognize and act upon transmission requests (ZROPS
  2032.           headers).  The sending program should be corrected.  In the meantime, setting
  2033.           a ZMODEM packet length with the "zmodem pl4096" ("l" is the small letter l)
  2034.           command will force the sender to wait for the receivers' progress reports.
  2035.  
  2036.           Permission denied comes from the Microsoft C Library.  This is caused by
  2037.           attempts to modify a read only file or directory, or to create a file in a
  2038.           nonexistent directory.
  2039.  
  2040.  
  2041.  
  2042.  
  2043.  
  2044.                                           31
  2045.  
  2046.  
  2047.  
  2048.  
  2049.  
  2050.  
  2051.  
  2052.  
  2053.           A furtive flashing appearance of XOFF or FLOW during ZMODEM or YMODEM-g file
  2054.           sending signifies DSZ is responding to flow control restraint.  This is normal
  2055.           operation when buffered modems or packet switched networks are used.  ZMODEM's
  2056.           robustness and reliability allow creative users to transfer files over unusual
  2057.           multiple computer lash-ups, causing modem data lights and computer status
  2058.           displays to dance in unfamiliar rhythms.
  2059.  
  2060.           Output FLow Control Restraint RELEASED Indcates DSZ has not received a
  2061.           positive flow control signal (XON and/or CTS as specified by the handshake
  2062.           command) within the timeout specified by the S numeric parameter.  This
  2063.           message may appear as the result of line noise.  If it appears sonsistiently,
  2064.           it may indicate improper flow control settings, defective modem and/or cable,
  2065.           or (rarely) too small a value for the S numeric parameter.
  2066.  
  2067.           Not allowed to overwrite %s By default, DSZ will not overwrite an existing
  2068.           file.  Use the -y or -n or -r option to overwrite/update existing files.
  2069.  
  2070.  
  2071.  
  2072.           2.1  Got ZRPOS
  2073.  
  2074.           Got ZRPOS indicates the receiving program has detected a transmission error
  2075.           and has requested retransmission.  In other words, ZMODEM is doing its job of
  2076.           detecting and correcting missing and garbled data.  If this happens more often
  2077.           than observed line errors would indicate is reasonable, there may be a flow
  2078.           control problem in one of four areas:
  2079.  
  2080.             + Between the sending program and its modem.  If using an interface speed
  2081.               higher than the transmission speed, or modem to modem error correction
  2082.               (MNP, LAPB, PEP, etc.), check that the modem and the sending program are
  2083.               configured for the same flow control methods.  Omen Technology's software
  2084.               is faster than most other programs, and may expose flow control problems
  2085.               not seen with slower software.
  2086.  
  2087.             + Between the sending modem and the network.  Correcting this requires
  2088.               "handshake both" to allow the sending program to honor both hardware (CTS)
  2089.               flow control from the modem and software flow control (XON/XOFF) from the
  2090.               network.
  2091.  
  2092.             + Between parts of the network.
  2093.  
  2094.             + Between the receiving modem and the receiving program.  This can happen at
  2095.               high transmission speeds when the receiver has specified a large I/O
  2096.               buffer size with the B numeric parameter.
  2097.  
  2098.               Excessive interrupt latency from extended memory ramdisks or disk caches,
  2099.               and poorly written hard disk drivers also wreak havoc on streaming
  2100.               protocols but do not affect start-stop protocols (XMODEM, etc.).  Problems
  2101.               with extended memory disk caches may cause errors at regular intervals;
  2102.               check the receiver's error messages.
  2103.  
  2104.               To work around these problems, give the "handshake slow" command to the
  2105.               receiver.
  2106.  
  2107.  
  2108.  
  2109.  
  2110.                                           32
  2111.  
  2112.  
  2113.  
  2114.  
  2115.  
  2116.  
  2117.  
  2118.  
  2119.           Byte NNNN retry M: <error message> These messages appear when the protocol has
  2120.           detected an error and is attempting to retransmit the garbled data.  These are
  2121.           normal messages.
  2122.  
  2123.  
  2124.  
  2125.           2.2  Serial Input Error: Line Status Register xx
  2126.  
  2127.           Serial Input Error: Line Status Register HH indicates a slow device driver,
  2128.           TSR program, or other software is disabling interrupts too long for the
  2129.           program to accept incoming data, and some characters are lost.  A slow
  2130.           response to folow control also triggers this message.
  2131.  
  2132.           The value of the line status register is displayed in HEX.  The following
  2133.           error conditions when present OR into the Line Status Register.
  2134.  
  2135.  
  2136.           01   The Interrupt level circular buffer has been overrun.  The remote did not
  2137.                respond to 's XOFF or hardware flow control, and continued to send
  2138.                characters after being told not to.  This problem is alleviated by
  2139.                correct modem flow control configuration.
  2140.  
  2141.           02   An 02 value for the LSR indicates Data Overrun.  "Data Overrun" means the
  2142.                computer was not able to respond to an incoming character from the UART
  2143.                (modem) in time to make room for the next incoming character.  Data
  2144.                Overruns are caused by poorly designed software (or ROM BIOS "firmware")
  2145.                locking out interrupts for excessive periods.  These lockouts prevent the
  2146.                communications program from responding to the incoming characters quickly
  2147.                enough.
  2148.  
  2149.                To correct Data Overruns, correct the offending condition(s) to allow the
  2150.                communications program to operate properly.
  2151.  
  2152.                Common causes of excessively long interrupt lockouts ("critical code
  2153.                regions") are disk drivers (BIOS), window managers, disk caches, TSR
  2154.                programs, EGA/VGA board auto-select.
  2155.  
  2156.                Some BIOS programs are written without regard to their effect on high
  2157.                speed communications.  Sometimes better versions of the offending BIOS
  2158.                programs are made available if enough users complain about poor
  2159.                performance.
  2160.  
  2161.                Interrupt latency caused by EGA/VGA board auto-select can be often
  2162.                corrected by disabling the board's Auto-Select.
  2163.  
  2164.                Other chapters in this document give suggestions for working around
  2165.                excessive interrupt latency, primarily the handshake slow command and use
  2166.                of the NS16550AN UART chip.  Please refer to the "Brain Damaged UARTS"
  2167.                subchapter.
  2168.  
  2169.           08   Framing Error generally caused by line noise or an incorrect transmission
  2170.                speed ("baud rate") or format (number of bits).  Most protocols require 8
  2171.                bits no parity (-8n) for proper operation.  This is set automatically by
  2172.                Omen Technology programs, but other programs may not be so smart.
  2173.  
  2174.  
  2175.  
  2176.                                           33
  2177.  
  2178.  
  2179.  
  2180.  
  2181.  
  2182.  
  2183.  
  2184.  
  2185.  
  2186.           10   Break Interrupt generally caused by line noise or an incorrect
  2187.                transmission speed ("baud rate") or format (number of bits).
  2188.  
  2189.           18   Framing Error and Break Interrupt (see above) in combination.
  2190.  
  2191.                This error may also be caused by defective 8250 UART chips.  Certain
  2192.                internal modem cards have slow 8250 chips that do not operate properly
  2193.                with computers faster than 4.77 mHz.  Replacing the 8250 with a NS16550AN
  2194.                is recommended.
  2195.  
  2196.  
  2197.  
  2198.           2.3  Out of Environment
  2199.  
  2200.           Means there is not enough room in the program environment to accept more data.
  2201.  
  2202.           DOS prints this message when it cannot allocate more memory to accommodate a
  2203.           "set" command, such as "set dirrx=c:/downloads/".
  2204.  
  2205.           Try moving the "set" commands to the batch file that calls your comms program,
  2206.           or to your AUTOEXEC.BAT file.
  2207.  
  2208.           To increase environment, use the /E switch. The default is 160 bytes.
  2209.  
  2210.           An example for your CONFIG.SIS file: SHELL=C:COMMAND.COM/E:256
  2211.  
  2212.           NOTE: Large environments may cause DSZ.COM to lockup.  This is less of a
  2213.           problem with DSZ.EXE.
  2214.  
  2215.  
  2216.  
  2217.           2.4  SLOW TRANSFERS
  2218.  
  2219.           Some users report slower than expected file transfers even when few or no
  2220.           errors are reported.  Some possible causes are:
  2221.  
  2222.           If "handshake slow" is used, throughput may suffer.  Try one of the other
  2223.           solutions to the "Line Status Register = 02" error problem discussed above.
  2224.           It may be possible to increase the modem's interface speed, say from 9600 to
  2225.           19200 bps.
  2226.  
  2227.           Bad phone lines will silently slow MNP modems, sometimes without any error
  2228.           indications.  Of the modems disconnect fairly often you should suspect
  2229.           marginal phone line conditions that are begin "covered up" by the MNP.
  2230.  
  2231.           The other ZMODEM may have a parameter or option is use that acts to slow the
  2232.           transfer under certain conditions.
  2233.  
  2234.  
  2235.  
  2236.  
  2237.  
  2238.  
  2239.  
  2240.  
  2241.  
  2242.                                           34
  2243.  
  2244.  
  2245.  
  2246.  
  2247.  
  2248.  
  2249.  
  2250.  
  2251.           ─────────────────────────────────────
  2252.           JAN-22-1990: ZMODEM-90(TM) EXTENSIONS:
  2253.           ─────────────────────────────────────
  2254.  
  2255.           Receiver specified window size: The -Wn option operates similarly to the -wn
  2256.           option.  The -Wn option is specified to the receiver, which sends this
  2257.           information to the sender.  Pro-YAM, ZCOMM and DSZ versions beginning with Jan
  2258.           22 support this.
  2259.  
  2260.           Specified extra escaped characters: The "zmtxesc" and "zmrxesc" allow extra
  2261.           characters to be escaped when sending (zmtxesc) or receiving (zmrxesc).
  2262.           Zmtxesc is effective sending to any ZMODEM program.  The sz commands in Omen
  2263.           products after Jan 22 1990 except for DSZ.COM recognize incoming "zmrxesc"
  2264.           requests.  TThe zmrxesc and zmtxesc string parameters consist of one or more
  2265.           printing characters corresponding to the control characters to be escaped.  To
  2266.           escape NULL:  set zmrxesc "@"
  2267.  
  2268.           Since DSZ does not support string parameters, a -Q<string> option unique to
  2269.           DSZ performs the same function as zmrxesc and zmtxesc.  If the Q<string>
  2270.           option is used in DSZOPT, it must be last.  To escape NULL: dsz sz -Q@
  2271.           file.ext
  2272.  
  2273.           MobyTurbo(Tm):
  2274.  
  2275.           MobyTurbo optimizes throughput on ZIP, ARC, and similar files over paths that
  2276.           support YMODEM-g (or would except for random errors).  MobyTurbo cannot be
  2277.           used with most types of software flow control (or "handshake both").
  2278.  
  2279.           Activate MobyTurbo with the -m option to one or more of: sz, rz, or adlopts.
  2280.  
  2281.           LOCK OUT MobyTurbo with the -M option.  -M is effective until the next "call"
  2282.           command.  Use -M in situations when the sender has -m turned on and YAM's
  2283.           check fails to discover path conditions that preclude MobyTurbo.
  2284.  
  2285.  
  2286.  
  2287.           ──────────────────────
  2288.           MAJOR REVISION HISTORY:
  2289.           ──────────────────────
  2290.  
  2291.           The ZMODEM "Slow Send" mode inserts a brief pause after each subpacket when
  2292.           invoked with the -F option, or automatically when the "sz" command detects
  2293.           failing flow control.  The zmodem F numeric parameter (default 1) sets the
  2294.           pause in tenths of seconds.
  2295.  
  2296.           4-24-89 The -rr option has been improved.  Long file compares are done in two
  2297.           stages to save time when the first portions do not match.  Diagnostic code and
  2298.           undocumented commands have been removed to decrease the program size.
  2299.  
  2300.           DSZ now defaults to "handshake both" if the speed is greater than 2400 and the
  2301.           clear to send signal is high when DSZ selects the comm port (was "handshake
  2302.           on" in 3-19).
  2303.  
  2304.           The 4-18 version introduces ZMODEM variable length headers of up to 16 bytes
  2305.  
  2306.  
  2307.  
  2308.                                           35
  2309.  
  2310.  
  2311.  
  2312.  
  2313.  
  2314.  
  2315.  
  2316.  
  2317.           information field instead of the previous fixed 4.  Selection of variable
  2318.           length header capability is automatic and downward compatible.  Variable
  2319.           length headers allow future extensions to ZMODEM's capabilities.
  2320.  
  2321.           ZMODEM Crash Recovery now understands the -rr option to compare the CRC-32 of
  2322.           the assumed common file segment before continuing an incomplete file transfer.
  2323.           The "zmodem R" numeric parameter may be set to limit the number of bytes in
  2324.           the files that are compared; the default R value of 0 allows all of the file
  2325.           to be compared, an R value up to 32000 (up to 2 billion on 32 bit flavors)
  2326.           limits the comparison to the first R bytes of the two files.  The ZMODEM -rr
  2327.           option is supported by Omen Tech versions April 18 1989 and later.
  2328.  
  2329.           When ZMODEM Crash Recovery detects incompatible source and destination file
  2330.           contents, the destination file is now truncated to zero length before
  2331.           proceeding with the transfer.  Crash Recovery requires the destination file to
  2332.           be no longer than the source file.
  2333.  
  2334.           Error reporting on unregistered copies has been enhanced to point the user to
  2335.           solutions described in the relevant chapters in DSZ.DOC.
  2336.  
  2337.           3-18-89 In order to work around a bug in the new TCOMM bbs, DSZ now defaults
  2338.           to "handshake on" if the speed is greater than 2400 and the clear to send
  2339.           signal is high when DSZ selects the comm port.
  2340.  
  2341.           The "o" command has been added to disconnect the modem after a terminal
  2342.           session: "dsz t o" disconnects the modem when the terminal session is
  2343.           completed.
  2344.  
  2345.           The "P" (capital P) numeric parameter (q.v.) has been added to display and
  2346.           control the UART fifo on some clone chips.
  2347.  
  2348.           Handling of the Ctrl-Break vector has been changed so an untimely keyboarded
  2349.           Ctrl-C or Ctrl-Break will not hang DOS.
  2350.  
  2351.           2-15-89  DIRRX is enabled for BBS registrations (8xxx numbers).  Logic has
  2352.           been added to simulate transmit interrupts on chips that have problems in this
  2353.           area.  The "A" command does not require registration.  An interaction between
  2354.           ONAME= or PREFIX= and the file count display has been removed.  Time/date
  2355.           conversion routines have been enhanced to deal with files with missing dates.
  2356.           The "v" command has been added to allow bbs programs to interrogate DSZ's
  2357.           serial number.
  2358.  
  2359.           2-06-89 A spurious error message at the completion of YMODEM downloads with a
  2360.           download directory specified on the command line has been eliminated.
  2361.  
  2362.           2-05-89 DSZ now returns a non 0 status unless at least one file has been
  2363.           transferred.  An inappropriate pathname/disk specifier check on specified
  2364.           download directories has been removed.
  2365.  
  2366.           Previous versions:
  2367.  
  2368.           Added the "A" command to prevent pcAnywhere host mode from locking up DSZ.
  2369.           SlugBait logic has been simplified, reporting any failed file transfer where
  2370.           any of the last 1K of the file was sent with Q status.
  2371.  
  2372.  
  2373.  
  2374.                                           36
  2375.  
  2376.  
  2377.  
  2378.  
  2379.  
  2380.  
  2381.  
  2382.  
  2383.  
  2384.           Introduced ZMODEM RLE compression with the -Z option.  (registered DSZ copies
  2385.           also accept "Z" in the DSZOPT environment variable.) ZMODEM RLE compression
  2386.           packs runs of the same character in two or three character sequences.
  2387.           Compression is useful for screen dumps, uncompressed workspaces, compiler
  2388.           listings, and other files rich with strings of repeated characters, but not
  2389.           .ARC, .ZOO and other compressed files.  Compression percentages range from -1
  2390.           per cent for already compressed files to more than 1000 per cent (10x
  2391.           speedup!) for the Personal Computing text file benchmark(!).  When sending to
  2392.           programs that do not support ZMODEM compression, the -Z option is ignored.
  2393.           The -Z option is effective when specified to the sending program only.
  2394.  
  2395.           Good news for tired frog stompers!  The ZMODEM rz/sz programs are now
  2396.           available in a VMS C flavor.  The VAX/VMS source files are contained in the
  2397.           RZSZ.ARC (RZSZ.ZOO) archive file.
  2398.  
  2399.           "Handshake slow" has been added to disable the RTS signal to the modem while
  2400.           writing to disk, even if the interrupt buffer is not chock full of bytes.
  2401.           This should help systems with excessive interrupt latency on disk writes.
  2402.  
  2403.           Setting the v (verbose) parameter to 1 or greater causes serialized copies to
  2404.           ring the bell when a transfer is done.
  2405.  
  2406.           DSZ.DOC has been extensively rewritten and reorganized.  DSZ now supports the
  2407.           advanced buffering of the National NS16550AN and Intel 82510 serial interface
  2408.           devices.  Please refer to the subchapter on "Brain Damaged UARTs".
  2409.  
  2410.  
  2411.  
  2412.  
  2413.  
  2414.  
  2415.  
  2416.  
  2417.  
  2418.  
  2419.  
  2420.  
  2421.  
  2422.  
  2423.  
  2424.  
  2425.  
  2426.  
  2427.  
  2428.  
  2429.  
  2430.  
  2431.  
  2432.  
  2433.  
  2434.  
  2435.  
  2436.  
  2437.  
  2438.  
  2439.  
  2440.                                           37
  2441.  
  2442.  
  2443.  
  2444.  
  2445.  
  2446.  
  2447.  
  2448.  
  2449.  
  2450.  
  2451.  
  2452.  
  2453.  
  2454.  
  2455.  
  2456.  
  2457.  
  2458.  
  2459.  
  2460.  
  2461.  
  2462.  
  2463.  
  2464.  
  2465.  
  2466.  
  2467.  
  2468.  
  2469.  
  2470.  
  2471.  
  2472.  
  2473.  
  2474.  
  2475.  
  2476.  
  2477.  
  2478.  
  2479.  
  2480.  
  2481.  
  2482.  
  2483.  
  2484.  
  2485.  
  2486.  
  2487.  
  2488.  
  2489.  
  2490.  
  2491.  
  2492.  
  2493.  
  2494.  
  2495.  
  2496.  
  2497.  
  2498.  
  2499.  
  2500.  
  2501.  
  2502.  
  2503.  
  2504.  
  2505.  
  2506.                                           38
  2507.